home *** CD-ROM | disk | FTP | other *** search
- package sun.util;
-
- import java.util.AbstractMap;
- import java.util.Map;
- import java.util.Set;
-
- public abstract class PreHashedMap<V> extends AbstractMap<String, V> {
- private final int rows;
- private final int size;
- private final int shift;
- private final int mask;
- // $FF: renamed from: ht java.lang.Object[]
- private final Object[] field_0;
-
- protected PreHashedMap(int var1, int var2, int var3, int var4) {
- this.rows = var1;
- this.size = var2;
- this.shift = var3;
- this.mask = var4;
- this.field_0 = new Object[var1];
- this.init(this.field_0);
- }
-
- protected abstract void init(Object[] var1);
-
- private V toV(Object var1) {
- return (V)var1;
- }
-
- public V get(Object var1) {
- int var2 = var1.hashCode() >> this.shift & this.mask;
- Object[] var3 = this.field_0[var2];
- if (var3 == null) {
- return null;
- } else {
- while(!var3[0].equals(var1)) {
- if (var3.length < 3) {
- return null;
- }
-
- var3 = var3[2];
- }
-
- return (V)this.toV(var3[1]);
- }
- }
-
- public V put(String var1, V var2) {
- int var3 = var1.hashCode() >> this.shift & this.mask;
- Object[] var4 = this.field_0[var3];
- if (var4 == null) {
- throw new UnsupportedOperationException(var1);
- } else {
- while(!var4[0].equals(var1)) {
- if (var4.length < 3) {
- throw new UnsupportedOperationException(var1);
- }
-
- var4 = var4[2];
- }
-
- Object var5 = this.toV(var4[1]);
- var4[1] = var2;
- return (V)var5;
- }
- }
-
- public Set<String> keySet() {
- return new 1(this);
- }
-
- public Set<Map.Entry<String, V>> entrySet() {
- return new 2(this);
- }
-
- // $FF: synthetic method
- static int access$000(PreHashedMap var0) {
- return var0.size;
- }
-
- // $FF: synthetic method
- static int access$100(PreHashedMap var0) {
- return var0.rows;
- }
-
- // $FF: synthetic method
- static Object[] access$200(PreHashedMap var0) {
- return var0.field_0;
- }
- }
-